package br.com.velp.sudecap.comum;

import java.util.ArrayList;
import java.util.List;

/**
 * <sumario>
 * <objetivo>"Rastreabilidade"</objetivo>
 * <autor>EDUARDO SANTOS DE OLIVEIRA</autor>
 * <versao>1.0.0.0</versao>
 * <data_criacao> 17.10.2012 </data_criacao>
 * <data_ultima_alteracao> N/A </data_ultima_alteracao>
 * <descricao> Classe Responsável Por Expor Para a Camada de Controle
 *             as Possíveis Validações Aplicadas na Camada de Serviço</descricao>
 * </sumario>
 */
public class ValidationException extends Exception {
    
    private List<String> mensagens;

    public ValidationException() {
	this.mensagens = new ArrayList<String>();
    }

    public ValidationException(String message) {
	this.mensagens = new ArrayList<String>();
	this.mensagens.add(message);
    }

    public void adicionarMensagem(String key){
	this.mensagens.add(key);
    }
    
    public void removerMensagem(String key){
	this.mensagens.remove(key);
    }
    
    public void limparMensagens(){
	this.mensagens.clear();
    }
    
    public boolean hasErros(){
	return !this.mensagens.isEmpty();
    }

    public List<String> getMensagens() {
	return mensagens;
    }
    
}
